home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
IRIX 6.3 Development Libraries
/
SGI IRIX 6.3 Development Libraries.iso
/
dist
/
dist6.3
/
ViewKit_dev.idb
/
usr
/
include
/
Vk
/
VkColorChooserDialog.h.z
/
VkColorChooserDialog.h
Wrap
C/C++ Source or Header
|
1996-09-20
|
4KB
|
153 lines
////////////////////////////////////////////////////////////////////////////////
/////// Copyright 1992, Silicon Graphics, Inc. All Rights Reserved. ///////
// //
// This is UNPUBLISHED PROPRIETARY SOURCE CODE of Silicon Graphics, Inc.; //
// the contents of this file may not be disclosed to third parties, copied //
// or duplicated in any form, in whole or in part, without the prior written //
// permission of Silicon Graphics, Inc. //
// //
// RESTRICTED RIGHTS LEGEND: //
// Use,duplication or disclosure by the Government is subject to restrictions //
// as set forth in subdivision (c)(1)(ii) of the Rights in Technical Data //
// and Computer Software clause at DFARS 252.227-7013, and/or in similar or //
// successor clauses in the FAR, DOD or NASA FAR Supplement. Unpublished - //
// rights reserved under the Copyright Laws of the United States. //
// //
////////////////////////////////////////////////////////////////////////////////
#ifndef VKCOLORCHOOSERDIALOG_H
#define VKCOLORCHOOSERDIALOG_H
#include <Vk/VkDialogManager.h>
#include <Sgm/ColorC.h>
/*******************************************************
CLASS
VkColorChooserDialog
OVERVIEW
AUTHOR
Doug Young
******************************************************/
class VkColorChooserDialog : public VkDialogManager {
public:
////////////
//
//
VkColorChooserDialog( const char* name );
////////////
//
//
virtual ~VkColorChooserDialog();
////////////
//
//
const char* className();
////////////
//
//
XColor *getColor(); // Returns a shifted XColor
XColor *getXColor(); // Returns a normal XColor
////////////
//
//
void setColor(short r, short g, short b); // same as setCurrent + setStored
void setXColor(unsigned short r, unsigned short g, unsigned short b);
////////////
//
//
void setCurrentColor(short r, short g, short b);
void setCurrentXColor(unsigned short r, unsigned short g, unsigned short b);
////////////
//
//
void setStoredColor(short r, short g, short b);
void setStoredXColor(unsigned short r, unsigned short g, unsigned short b);
////////////
//
//
static const char *const valueChangedCallback;
protected:
////////////
//
//
virtual Widget createDialog( Widget dialogParent );
////////////
//
//
virtual void ok(Widget, XtPointer);
////////////
//
//
virtual void apply(Widget, XtPointer);
////////////
//
//
virtual void cancel(Widget, XtPointer);
////////////
//
//
virtual void drag(Widget, XtPointer);
////////////
//
//
virtual void valueChanged(Widget, XtPointer);
////////////
//
//
void clearValues(VkCallbackObject *, void *, void*);
private:
static void dragCB(Widget, XtPointer, XtPointer);
static void valueChangedCB(Widget, XtPointer, XtPointer);
SgColorChooserCallbackStruct *_callData;
// _currentColor points to an XColor[2].
// _currentColor[0] is shifted, as expected by SgColorChooser
// _currentColor[1] is shifted back, and returned, when called for
// This means that _currentColor[1] is truly an XColor.
XColor *_currentColor;
XColor *_storedColor;
};
extern VkColorChooserDialog *getTheColorChooserDialog();
#define theColorChooserDialog getTheColorChooserDialog()
#endif // VKCOLORCHOOSERDIALOG_H